#ifndef RUNNABLE_HPP
#define RUNNABLE_HPP
#include "runtimeinfo.h"
using namespace com_oocl_monitor::domain;
namespace com_oocl_monitor {
	namespace system {
		class Runnable {
		public:
			virtual void run() = 0;
			virtual ~Runnable() {
			}
			RunTimeInfo *getRunTimeInfo() const {
				return _runTimeInfo;
			}
		protected:
			explicit Runnable(RunTimeInfo *runtimeInfo=nullptr):_runTimeInfo(runtimeInfo) {}
		private:
			RunTimeInfo *_runTimeInfo;
		};
	}
}

#endif // RUNNABLE_HPP

